Detecting fault states of an aircraft

ABSTRACT

An apparatus for detecting a fault state of an aircraft is provided. The apparatus accesses a training set of flight data for the aircraft. The training set includes observations of the flight data, each observation of the flight data includes measurements of properties selected and transformed into a set of features. The apparatus builds a generative adversarial network including a generative model and a discriminative model using the training set and the set of features, and builds an anomaly detection model to predict the fault state of the aircraft. The anomaly detection model is trained using the training set of flight data, simulated flight data generated by the generative model, and a subset of features from the set of features. The apparatus deploys the anomaly detection model to predict the fault state of the aircraft using additional observations of the flight data.

TECHNOLOGICAL FIELD

The present disclosure relates generally to detecting one or more faultstates of an aircraft, and in particular, to detecting one or more faultstates of an aircraft based on a generative adversarial network (GAN).

BACKGROUND

Detecting fault states of an aircraft is important for operation andmaintenance of the aircraft. Some existing solutions create models thatact as anomaly detectors to detect fault states of an aircraft. Thesesolutions are generally applied directly to raw data or low-levelhand-designed features such as condition indicators. These solutions aremore susceptible to false alarms and false negatives due to noise andnormal variability in the underlying data distribution.

Another solution is to produce predictions of fault states based on realflight data of the aircraft measured by sensors or avionic systems onthe aircraft. However, an aircraft can generate terabytes of flight dataover the course of a year and this amount may rapidly increase with theincrease of sensors. Thus, the large amount of real flight data mayincrease the data storage requirement of the system performing thedetection of fault states. Some existing approaches to handle the largeamount of real flight data include using techniques such as low samplingrates, intermittent sampling, down sampling before transmission orstorage, data thresholding, and simply deleting flight data that hasbeen stored for a predefined period of time. These approaches areundesirable because they may discard flight data with usefulinformation.

Therefore, it would be desirable to have a system and method that takesinto account at least some of the issues discussed above, as well asother possible issues.

BRIEF SUMMARY

Example implementations of the present disclosure are directed todetecting one or more fault states of an aircraft based on a generativeadversarial network (G(AN). Example implementations provide adata-driven method and system for improving aircraft prognostics.Example implementations can enhance aircraft prognostics using machinelearning (ML) to simultaneously learn a generative model that cangenerate simulated flight data, and a discriminative model that candetect anomalous flight data. The generative model and discriminativemodel can be built and trained using a GAN. Example implementations canimplement the generative model and discriminative model as separateneural networks that compete with one another in a two-player game.

In example implementations, the generative model can attempt to producea simulated or fake data distribution of flight data of the aircraftthat is as close as possible to the real measured data distribution.Simultaneously, the discriminative model can attempt to distinguishbetween the simulated or fake data and data drawn from the real measureddata distribution. The generative model and discriminative model canconverge to an equilibrium, where the simulated data distributionproduced by the generative model may closely match the real datadistribution and the discriminative model may have learned features thatcapture the statistical properties of the real data distribution. Thelearned features can be used to train an anomaly detection model such asa one-class support vector machine, for the purpose of detecting faultstates of the aircraft and generating early warning signals of componentfailures.

Example implementations can reduce data storage requirements of thesystem performing the detection of fault states. The system may storeonly a small amount of measured real flight data. When large amounts offlight data are required, for example when training an anomaly detectionmodel, the stored small amount of real flight data can be supplementedwith a large amount of simulated flight data generated by the generativemodel. The system may not need to store the large amount of simulatedflight data. Instead, the system may store the generative model and/ordiscriminative model. Because the simulated data distribution producedby the generative model may closely match the real data distribution,and the discriminative model may have learned features that capture thestatistical properties of the real data distribution, the training ofthe anomaly detection model can be performed using the small amount ofreal flight data supplemented with the large amount of simulated flightdata and the learned features. The trained anomaly detection model canprovide an accurate and robust detection of fault states of the aircraftby detecting impending component failures that alter the measured datadistribution.

Example implementations do not need to make a priori assumption, thatis, an assumption that is true without further proof or need to proveit, about the measured data distribution and can handle high-dimensionaldata distributions. Example implementations also do not require that theflight data be labeled as normal or abnormal. That is, exampleimplementations can provide an unsupervised machine learning solution.

The present disclosure thus includes, without limitation, the followingexample implementations.

Some example implementations provide a method of detecting a fault stateof an aircraft, comprising: accessing a training set of flight data forthe aircraft, the training set including observations of the flightdata, each observation of the flight data includes measurements ofproperties from sensors or avionic systems selected and transformed intoa set of features; building a generative adversarial network (GAN)including a generative model and a discriminative model using thetraining set and the set of features, the generative model and thediscriminative model being trained to respectively generate simulatedflight data corresponding to the flight data, and evaluate the simulatedflight data, until the simulated flight data has a correspondingdistribution that matches a distribution of the flight data, thediscriminative model further identifying a subset of features from theset of features that capture statistical properties of the distributionof the flight data; building an anomaly detection model to predict thefault state of the aircraft, the anomaly detection model being trainedusing the training set of flight data, the simulated flight data, andthe subset of features; and deploying the anomaly detection model topredict the fault state of the aircraft using additional observations ofthe flight data.

In some example implementations of the method of any preceding exampleimplementation, or any combination of preceding example implementations,the properties from the sensors or avionic systems are selectedproperties from a plurality of properties from a plurality of sensors oravionic systems, and accessing the training set includes at least:accessing a flight dataset for the aircraft, the flight datasetincluding the observations of the flight data, each observation of theflight data includes measurements of the plurality of properties fromthe plurality of sensors or avionic systems; and filtering theobservations of the flight data by the selected properties to producethe training set including the observations of the flight data, eachobservation of flight data includes the measurements of the selectedproperties.

In some example implementations of the method of any preceding exampleimplementation, or any combination of preceding example implementations,each observation is measured during operation of the aircraft in thefault state.

In some example implementations of the method of any preceding exampleimplementation, or any combination of preceding example implementations,the discriminative model includes the anomaly detection model, andbuilding the anomaly detection model includes training thediscriminative model to predict the fault state of the aircraft.

In some example implementations of the method of any preceding exampleimplementation, or any combination of preceding example implementations,the generative model and the discriminative model are trained usingWasserstein distance to measure a difference between the distribution ofthe flight data and the corresponding distribution of the simulatedflight data until the generative model and the discriminative model arein Nash equilibrium.

In some example implementations of the method of any preceding exampleimplementation, or any combination of preceding example implementations,the method further comprises establishing a digital datalink with theaircraft; receiving the additional observations of the flight data fromthe aircraft over the digital datalink; predicting and thereby produce aprediction of the fault state of the aircraft using the anomalydetection model as deployed, and using the additional observations ofthe flight data received from the aircraft over the digital datalink;and generating an alert in response to the prediction.

In some example implementations of the method of any preceding exampleimplementation, or any combination of preceding example implementations,the observations of the flight data in the training set of flight dataare from a larger plurality of observations of the flight data, and theanomaly detection model is trained using the simulated flight datagenerated by the generative model, without using the larger plurality ofobservations of the flight data that are not retained in data storage ofan apparatus implementing the method to reduce a storage requirement ofthe apparatus.

Some example implementations provide an apparatus for detecting a faultstate of an aircraft. The apparatus comprises a processor and a memorystoring executable instructions that, in response to execution by theprocessor, cause the apparatus to at least perform the method of anypreceding example implementation, or any combination of any precedingexample implementations.

Some example implementations provide a computer-readable storage mediumfor detecting a fault state of an aircraft. The computer-readablestorage medium is non-transitory and has computer-readable program codestored therein that in response to execution by a processor, causes anapparatus to at least perform the method of any preceding exampleimplementation, or any combination thereof.

These and other features, aspects, and advantages of the presentdisclosure will be apparent from a reading of the following detaileddescription together with the accompanying figures, which are brieflydescribed below. The present disclosure includes any combination of two,three, four or more features or elements set forth in this disclosure,regardless of whether such features or elements are expressly combinedor otherwise recited in a specific example implementation describedherein. This disclosure is intended to be read holistically such thatany separable features or elements of the disclosure, in any of itsaspects and example implementations, should be viewed as combinableunless the context of the disclosure clearly dictates otherwise.

It will therefore be appreciated that this Brief Summary is providedmerely for purposes of summarizing some example implementations so as toprovide a basic understanding of some aspects of the disclosure.Accordingly, it will be appreciated that the above described exampleimplementations are merely examples and should not be construed tonarrow the scope or spirit of the disclosure in any way. Other exampleimplementations, aspects and advantages will become apparent from thefollowing detailed description taken in conjunction with theaccompanying figures which illustrate, by way of example, the principlesof some described example implementations.

BRIEF DESCRIPTION OF THE FIGURE(S)

Having thus described example implementations of the disclosure ingeneral terms, reference will now be made to the accompanying figures,which are not necessarily drawn to scale, and wherein:

FIG. 1 illustrates a system for detecting a fault state of an aircraft,according to example implementations of the present disclosure;

FIG. 2 illustrates a generative adversarial network (GAN), according tovarious example implementations;

FIG. 3 is a flowchart illustrating various operations in a method ofdetecting a fault state of an aircraft, according to various exampleimplementations; and

FIG. 4 illustrates an apparatus according to some exampleimplementations;

DETAILED DESCRIPTION

Some implementations of the present disclosure will now be describedmore fully hereinafter with reference to the accompanying figures, inwhich some, but not all implementations of the disclosure are shown.Indeed, various implementations of the disclosure may be embodied inmany different forms and should not be construed as limited to theimplementations set forth herein; rather, these example implementationsare provided so that this disclosure will be thorough and complete, andwill fully convey the scope of the disclosure to those skilled in theart. For example, unless otherwise indicated, reference something asbeing a first, second or the like should not be construed to imply aparticular order. Also, something may be described as being abovesomething else (unless otherwise indicated) may instead be below, andvice versa; and similarly, something described as being to the left ofsomething else may instead be to the right, and vice versa. Likereference numerals refer to like elements throughout.

Example implementations of the present disclosure are generally directedto detecting one or more fault states of an aircraft, and in particular,to detecting one or more fault states of an aircraft based on agenerative adversarial network (GAN). The system is primarily describedin the context of an aircraft, but it should be understood that thesystem is equally applicable to any of a number of types of vehiclessuch as any of a number of different types of manned or unmanned landvehicles, aircraft, spacecraft, watercraft or the like.

FIG. 1 illustrates a system 100 for detecting a fault state of anaircraft 108, according to example implementations of the presentdisclosure. In some examples, as described in greater detail withreference to FIG. 4 , the system may be implemented by an apparatus fordetecting a fault state of an aircraft.

The system 100 includes any of a number of different subsystems (each anindividual system) for performing one or more functions or operations.As shown, in some examples, the system includes one or more of each of adata collector 101, a data filter 102 and a machine learning module 103.The subsystems may be co-located or directly coupled to one another, orin some examples, various ones of the subsystems may communicate withone another across one or more computer networks. Further, althoughshown as part of the system, it should be understood that any one ormore of the data collector, data filter and machine learning module mayfunction or operate as a separate system without regard to any of theother subsystems. It should also be understood that the system mayinclude one or more additional or alternative subsystems than thoseshown in FIG. 1 .

In some examples, the data collector 101 is configured to access atraining set of flight data for the aircraft 108. The training set maybe stored in a database and the data collector may extract the trainingset from the database. The training set includes observations of theflight data. Each observation of the flight data includes measurementsof properties from sensors or avionic systems (of the aircraft) selectedand transformed into a set of features. For example, the training setmay include measurements of acceleration, cabin air pressure, gastemperature, and/or other properties of the aircraft during one or moretraining flight legs. The measurements may be selected and transformedinto a set of features to indicate operating conditions of the aircraft.For example, the measurements of cabin air pressure may indicate thealtitude of the aircraft. The features may be statistics of the sensormeasurements. For example, the shock pulse energy can be a feature usedto detect bearing wear in rotary machinery, such as a gearbox. Otherexamples include statistics based on time-synchronous averaging ofsignals (e.g., from an accelerometer) and energy in different bandwidthsof the frequency spectrum. These features may be used to detect chippedgear-teeth or bent or misaligned shafts.

In some examples, the properties from the sensors or avionic systems ofthe aircraft 108 are selected properties from a plurality of propertiesfrom a plurality of sensors or avionic systems of the aircraft. Forexample, a plurality of sensors or avionic systems may measure aplurality of properties including acceleration, cabin air pressure, gastemperature, and/or other properties of the aircraft during multipletraining flight legs. The selected properties or properties of interestmay include cabin air pressure during a number of recent training flightlegs such as the most recent five training flight legs.

In some examples, the data collector 101 is configured to access aflight dataset for the aircraft 108. The flight dataset includes theobservations of the flight data. Each observation of the flight dataincludes measurements of the plurality of properties from the pluralityof sensors or avionic systems. The data collector can transmit theflight dataset to a data filter 102. The data filter is configured tofilter the observations of the flight data by the selected properties toproduce the training set. After filtering the observations of the flightdata, the training set includes the filtered observations of the flightdata. Each observation of flight data in the training set includes themeasurements of the selected properties. For example, the data collectorcan be configured to access a flight dataset including measurements ofacceleration, cabin air pressure, gas temperature, and/or otherproperties of the aircraft during multiple training flight legs. Afterthe filtering, the training set may include measurements of cabin airpressure during the most recent five training flight legs.

The data filter 102 can also filter the observations of the flight dataaccessed by the data collector 101 based on a data distribution ofinterest. In one example, the data distribution of interest may beflight data generated under normal, as-designed operating conditions(i.e., operation of the aircraft not in a fault state). The data filtermay remove flight data not generated under as-designed operatingconditions. In this example, the data collector is configured to accessthe training set including the observations of the flight data. Eachobservation of the flight data includes the measurements of propertiesfrom the sensors or avionic systems during as-designed operation of theaircraft 108.

In another example, the data distribution of interest is flight datagenerated when a particular failure mode or a fault state is present.The data filter 102 may remove all flight data not collected or measuredunder the fault state. In this example, the data collector 101 isconfigured to access the training set including the observations of theflight data. Each observation of the flight data includes themeasurements of properties from the sensors or avionic systems duringoperation of the aircraft in the fault state. That is, each observationis measured during operation of the aircraft in the fault state.

The data filter 102 can use filtering techniques such as the ellipticenvelope method that can make assumptions of the data distribution ofinterest and is robust to noise to filter the observations of the flightdata. In one example, after the filtering, the majority of the trainingset includes flight data generated according to the distribution ofinterest. The training set may also include flight data not generatedaccording to the distribution of interest.

The data filter 102 can provide the training set including the filteredobservations of the flight data to the machine learning module 103. Insome examples, the machine learning module is configured to build a GANusing the training set and the set of features derived from theobservations of the flight data in the training set. The GAN includes agenerative model 104 and a discriminative model 105. The generativemodel is trained to generate simulated flight data that mimics the realflight data in the training set. The discriminative model is trained toevaluate the simulated flight data. The generative model anddiscriminative model are trained until the simulated flight data has acorresponding distribution that matches a distribution of the realflight data in the training set. Training of the generative model anddiscriminative model will be described in detail below with reference toFIG. 2 .

In some examples, the discriminative model 105 is further configured toidentify a subset of features from the set of features that capturestatistical properties of the distribution of the flight data in thetraining set. For example, the set of features may indicate the altitudeof the aircraft and the data distribution of interest may be flight datagenerated during as-designed operation of the aircraft. In this example,based on the measured cabin air pressure during as-designed operation ofthe aircraft, the discriminative model can identify the altitude of theaircraft during as-designed operation of the aircraft.

In some examples, the generative model 104 and the discriminative model105 are trained using Wasserstein distance or metric, which is amathematic distance function defined between probability distributionson a given metric space, to measure a difference between thedistribution of the flight data in the training set and thecorresponding distribution of the simulated flight data, until thegenerative model and the discriminative model are in a game theorysolution concept called Nash equilibrium. Using Wasserstein distance totrain the generative model and the discriminative model can improve thespeed of convergence to Nash equilibrium and the robustness of the GAN.Wasserstein distance is a metric between probability distributions.During training, the GAN can estimate the Wasserstein distance betweenthe real flight data and the simulated flight data. The GAN can providea robust measurement of the Wasserstein distance between the real flightdata and the simulated flight data. During training, the Wassersteindistance between the real flight data and the simulated flight data maydecrease. When the Wasserstein distance between the real flight data andthe simulated flight data converges, i.e., the Wasserstein distancestops decreasing, the training can be finished. At this point, themachine learning module can determine that the simulated flight data hasa corresponding distribution that matches a distribution of the realflight data in the training set.

After the generative model 104 and discriminative model 105 are trained,the machine learning module 103 is configured to build an anomalydetection model 106, also referred to herein as an anomaly detector, topredict the fault state of the aircraft, the anomaly detection modelbeing built to predict the fault state according to any of a number ofanomaly detection techniques. The anomaly detection model is trainedusing the training set of flight data, the simulated flight data, andthe subset of features. In some examples, the discriminative modelincludes the anomaly detection model. In these examples, thediscriminative model can be used as the anomaly detection model, and themachine learning module is configured to train the discriminative modelto predict the fault state of the aircraft. In other examples, theanomaly detection model may be a separate model from the discriminativemodel.

As explained above, in some examples, using simulated flight datagenerated by the generative model 104 can reduce data storagerequirements of the system 100. The system may store only a small amountof real flight data. When large amounts of flight data are required, forexample when training the anomaly detection model 106, the stored smallamount of real flight data can be supplemented with a large amount ofsimulated flight data generated by the generative model. The system maynot need to store the large amount of simulated flight data. Instead,the system may store the generative model and/or discriminative model.In these examples, the observations of the flight data in the trainingset of flight data includes are from a larger plurality of observationsof the flight data. The anomaly detection model is trained using thesimulated flight data generated by the generative model, without usingthe larger plurality of observations of the flight data that areretained in data storage of the system to reduce a storage requirementof the system.

After the anomaly detection model 106 is trained, in some examples, themachine learning module 103 is configured to deploy the anomalydetection model to predict the fault state of the aircraft usingadditional observations of the flight data. In some examples, the datacollector 101 is configured to establish a digital datalink 107 with theaircraft 108 and receive additional observations of the flight data fromthe aircraft over the digital datalink. The aircraft may be in flightand the additional observations of the flight data may includemeasurements of real time flight data from the aircraft. In theseexamples, the machine learning module is configured to predict andthereby produce a prediction of the fault state of the aircraft usingthe anomaly detection model as deployed, and using the additionalobservations of the flight data received from the aircraft over thedigital datalink. In response to the prediction of the fault state, themachine learning module is configured to generate an alert. In responseto the alert, the pilot of the aircraft and/or the control center on theground may control the operation of the aircraft, e.g., landing of theaircraft, to avoid the occurrence of the fault state. In anotherexample, in response to the alert indicating the fault state, theaircraft can be indexed to a maintenance facility for performingmaintenance and/or repair. In this example, engineers or technicians atthe maintenance facility can repair, update or replace the one or moreparts related to or causing the fault state.

As explained above, a GAN can be built and trained for detecting faultstates of an aircraft. Before the GAN is built and trained, the machinelearning module 103 may perform a standardizing or normalizing processto the filtered data output from the data filter 102. For example, themachine learning module may perform a z-score standardization (e.g.,mean=0, variance=1) to the filtered data. The standardized data can beused to train the generative model 104 and discriminative model 105 inthe GAN, which can be implemented as separate neural networks thatcompete with one another in a two-player game.

In the training process, the generative model 104 may attempt to learnhow to generate simulated flight data that is as close as possible toreal flight data from the distribution of interest. Simultaneously, thediscriminative model 105 may attempt to distinguish between thesimulated flight data and the real flight data. The generative model mayattempt to generate simulated flight data that the discriminative modelclassifies as real flight data, i.e., the discriminative model is“fooled” by the generative model. In the training process, thegenerative model and discriminative model can converge to an equilibriumsuch as Nash equilibrium. At the equilibrium, the generative model cangenerate simulated flight data having a corresponding distribution thatmatches a distribution of the real flight data. That is, the generativemodel can generate simulated flight data that mimics the real flightdata closely. At the equilibrium, the discriminative model may not beable to distinguish between the simulated flight data and the realflight data because the simulated flight data is similar to the realflight data. However, at the equilibrium, the discriminative model mayhave learned salient features of the real flight data and can tell whatthe real flight data looks like.

FIG. 2 illustrates a GAN 200, according to various exampleimplementations. The GAN may be built and trained by the machinelearning module 103. At the beginning of the training process, thegenerative model 104 may not be able to generate simulated flight datathat mimics the real flight data closely. Instead, at the beginning ofthe training process, the generative model may generate simulated flightdata based on one or more random inputs from a known probabilitydistribution such as a uniform distribution or a Gaussian distribution.The discriminative model 105 may alternatively receive a sample of realflight data from the data filter 102 and a sample of simulated or fakeflight data from the generative model through a switching component 201.The real flight data may be generated from a data distribution ofinterest. In one example, the real flight data may include only flightdata generated during as-designed operation. In another example, thereal flight data may include only flight data generated during operationof the aircraft in a particular fault state such as a failure of acompressor. After receiving a sample, the discriminative model maydetermine whether the sample is a sample of real flight data or a sampleof simulated flight data.

The generative model 104 and discriminative model 105 may haverespective or separate loss functions that are simultaneously minimizedduring the training process by adapting weights or model parameters ofthe respective loss functions. In one example, the loss function for thegenerative model can be represented as:L _(G)(z;φ)=−E _(fake) log(D(G(z)))  (1)where z represents a random input to the generative model, φ representsweights or model parameters of the generative model, E_(fake) representsthe expected value over simulated flight data from the generative model,D represents the decision of the discriminative model 105 such as fakeflight data=1 and real flight data=0, and G(z) represents a sampleproduced by the generative model.

In one example, the loss function for the discriminative model 105 canbe represented as:L _(D)(x;θ)=−½E _(real) log(D(x))−E _(fake) log(1−D(G(z)))  (2)where x represents a sample from the real data distribution (the datadistribution of interest), θ represents weights or model parameters ofthe discriminative model, E_(real) represents the expected value overreal flight data from the real data distribution, D(x) represents thedecision of the discriminative model such as fake flight data=1 and realflight data=0.

The discriminative model 105 can make a decision that whether a receivedsample is real flight data or simulated flight data. The system 100 mayhave the information or knowledge of whether the discriminative modelactually receives a sample of real flight data or a sample of simulatedor fake flight data. Thus, the system can determine whether the decisionof the discriminative model is correct or not based on the informationor knowledge. In one example, the discriminative model can make adecision that the received sample is real flight data, and this decisionis correct, the weights or parameters of the discriminative model can betuned or updated using gradient descent. If the decision is incorrect,the weights or parameters of the discriminative model can be updatedwith a different descent direction. In another example, thediscriminative model can make a decision that the received sample issimulated flight data, and if this decision is correct, the weights orparameters of the generative model 104 can be updated using gradientdescent. If the decision is incorrect, the weights or parameters of thegenerative model can be updated with a different descent direction.

As the training process progresses, the generative model 104 anddiscriminative model 105 can converge to an equilibrium such as Nashequilibrium. At the equilibrium, the generative model can generatesimulated flight data having a corresponding distribution that matches adistribution of the real flight data. The discriminative model may havelearned or captured salient statistical properties of the distributionof the real flight data. In one example, the generative model cangenerate simulated flight data having a corresponding distribution thatmatches a high-dimensional distribution of the real flight data. Thegenerative model can generate samples of simulated flight data throughG(z) using the input z to the generative model. The generative model canalso generate samples from particular regions of the distributiongenerated by the generative model.

After the GAN 200 is trained, the machine learning module 103 can trainan anomaly detector 106. Because the simulated data distributionproduced by the generative model 104 may closely match the real datadistribution, data storage requirements of the system 100 can bereduced. The system may store only a small amount of measured realflight data. The training of the anomaly detection model can beperformed using the small amount of real flight data supplemented with alarge amount of simulated flight data produced by the generative modeland the learned features by the discriminative model. The quality oftraining the anomaly detector can be improved by using a large amount oftraining data including simulated flight data and the filtered realflight data.

The anomaly detector 106 may be required to operate on continuousvariables. In one example, the discriminative model 105 may include theanomaly detector or can be used as the anomaly detector to detect faultsstates of an aircraft. In another example, the discriminative model andthe anomaly detector can be separate models or filters. In this example,once the anomaly detector has been trained, it can be used inconjunction with the discriminative model to detect fault states of anaircraft and generate early warning signals of component failures.

FIG. 3 is a flowchart illustrating various operations in a method 300 ofdetecting a fault state of an aircraft 108, according to various exampleimplementations. As shown at block 301, the method includes accessing atraining set of flight data for the aircraft 108. The training setincludes observations of the flight data. Each observation of the flightdata includes measurements of properties from sensors or avionic systemsselected and transformed into a set of features.

At block 302, the method includes building a GAN 200 including agenerative model 104 and a discriminative model 105 using the trainingset and the set of features. The generative model and the discriminativemodel are trained to respectively generate simulated flight datacorresponding to the flight data, and evaluate the simulated flightdata. The generative model and the discriminative model are traineduntil the simulated flight data has a corresponding distribution thatmatches a distribution of the flight data. The discriminative modelfurther identifies a subset of features from the set of features thatcapture statistical properties of the distribution of the flight data.

At block 303, the method 300 includes building an anomaly detectionmodel 106 to predict the fault state of the aircraft 108. The anomalydetection model is trained using the training set of flight data, thesimulated flight data, and the subset of features. At block 304, themethod includes deploying the anomaly detection model to predict thefault state of the aircraft using additional observations of the flightdata.

According to example implementations of the present disclosure, thesystem 100 and its subsystems including the data collector 101, datafilter 102 and machine learning module 103 may be implemented by variousmeans. Means for implementing the system and its subsystems may includehardware, alone or under direction of one or more computer programs froma computer-readable storage medium. In some examples, one or moreapparatuses may be configured to function as or otherwise implement thesystem and its subsystems shown and described herein. In examplesinvolving more than one apparatus, the respective apparatuses may beconnected to or otherwise in communication with one another in a numberof different manners, such as directly or indirectly via a wired orwireless network or the like.

FIG. 4 illustrates an apparatus 400 according to some exampleimplementations. Generally, an apparatus of exemplary implementations ofthe present disclosure may comprise, include or be embodied in one ormore fixed or portable electronic devices. Examples of suitableelectronic devices include a smartphone, tablet computer, laptopcomputer, desktop computer, workstation computer, server computer or thelike. The apparatus may include one or more of each of a number ofcomponents such as, for example, processor 401 (e.g., processingcircuitry) connected to a memory 402 (e.g., storage device). In someexamples, the apparatus 400 implements the system 100.

The processor 401 may be composed of one or more processors alone or incombination with one or more memories. The processor is generally anypiece of computer hardware that is capable of processing informationsuch as, for example, data, computer programs and/or other suitableelectronic information. The processor is composed of a collection ofelectronic circuits some of which may be packaged as an integratedcircuit or multiple interconnected integrated circuits (an integratedcircuit at times more commonly referred to as a “chip”). The processormay be configured to execute computer programs, which may be storedonboard the processor or otherwise stored in the memory 402 (of the sameor another apparatus).

The processor 401 may be a number of processors, a multi-core processoror some other type of processor, depending on the particularimplementation. Further, the processor may be implemented using a numberof heterogeneous processor systems in which a main processor is presentwith one or more secondary processors on a single chip. As anotherillustrative example, the processor may be a symmetric multi-processorsystem containing multiple processors of the same type. In yet anotherexample, the processor may be embodied as or otherwise include one ormore application-specific integrated circuits (ASICs),field-programmable gate arrays (FPGAs) or the like. Thus, although theprocessor may be capable of executing a computer program to perform oneor more functions, the processor of various examples may be capable ofperforming one or more functions without the aid of a computer program.In either instance, the processor may be appropriately programmed toperform functions or operations according to example implementations ofthe present disclosure.

The memory 402 is generally any piece of computer hardware that iscapable of storing information such as, for example, data, computerprograms (e.g., computer-readable program code 403) and/or othersuitable information either on a temporary basis and/or a permanentbasis. The memory may include volatile and/or non-volatile memory, andmay be fixed or removable. Examples of suitable memory include randomaccess memory (RAM), read-only memory (ROM), a hard drive, a flashmemory, a thumb drive, a removable computer diskette, an optical disk, amagnetic tape or some combination of the above. Optical disks mayinclude compact disk-read only memory (CD-ROM), compact disk-read/write(CD-R/W), DVD or the like. In various instances, the memory may bereferred to as a computer-readable storage medium. The computer-readablestorage medium is a non-transitory device capable of storinginformation, and is distinguishable from computer-readable transmissionmedia such as electronic transitory signals capable of carryinginformation from one location to another. Computer-readable medium asdescribed herein may generally refer to a computer-readable storagemedium or computer-readable transmission medium.

In addition to the memory 402, the processor 401 may also be connectedto one or more interfaces for displaying, transmitting and/or receivinginformation. The interfaces may include a communications interface 404(e.g., communications unit) and/or one or more user interfaces. Thecommunications interface may be configured to transmit and/or receiveinformation, such as to and/or from other apparatus(es), network(s) orthe like. The communications interface may be configured to transmitand/or receive information by physical (wired) and/or wirelesscommunications links. Examples of suitable communication interfacesinclude a network interface controller (NIC), wireless NIC (WNIC) or thelike.

The user interfaces may include a display 406 and/or one or more userinput interfaces 405 (e.g., input/output unit). The display may beconfigured to present or otherwise display information to a user,suitable examples of which include a liquid crystal display (LCD),light-emitting diode display (LED), plasma display panel (PDP) or thelike. The user input interfaces may be wired or wireless, and may beconfigured to receive information from a user into the apparatus, suchas for processing, storage and/or display. Suitable examples of userinput interfaces include a microphone, image or video capture device,keyboard or keypad, joystick, touch-sensitive surface (separate from orintegrated into a touchscreen), biometric sensor or the like. The userinterfaces may further include one or more interfaces for communicatingwith peripherals such as printers, scanners or the like.

As indicated above, program code instructions may be stored in memory,and executed by processor that is thereby programmed, to implementfunctions of the systems, subsystems, tools and their respectiveelements described herein. As will be appreciated, any suitable programcode instructions may be loaded onto a computer or other programmableapparatus from a computer-readable storage medium to produce aparticular machine, such that the particular machine becomes a means forimplementing the functions specified herein. These program codeinstructions may also be stored in a computer-readable storage mediumthat can direct a computer, a processor or other programmable apparatusto function in a particular manner to thereby generate a particularmachine or particular article of manufacture. The instructions stored inthe computer-readable storage medium may produce an article ofmanufacture, where the article of manufacture becomes a means forimplementing functions described herein. The program code instructionsmay be retrieved from a computer-readable storage medium and loaded intoa computer, processor or other programmable apparatus to configure thecomputer, processor or other programmable apparatus to executeoperations to be performed on or by the computer, processor or otherprogrammable apparatus.

Retrieval, loading and execution of the program code instructions may beperformed sequentially such that one instruction is retrieved, loadedand executed at a time. In some example implementations, retrieval,loading and/or execution may be performed in parallel such that multipleinstructions are retrieved, loaded, and/or executed together. Executionof the program code instructions may produce a computer-implementedprocess such that the instructions executed by the computer, processoror other programmable apparatus provide operations for implementingfunctions described herein.

Execution of instructions by a processor, or storage of instructions ina computer-readable storage medium, supports combinations of operationsfor performing the specified functions. In this manner, an apparatus 400may include a processor 401 and a computer-readable storage medium ormemory 402 coupled to the processor, where the processor is configuredto execute computer-readable program code 403 stored in the memory. Itwill also be understood that one or more functions, and combinations offunctions, may be implemented by special purpose hardware-based computersystems and/or processors which perform the specified functions, orcombinations of special purpose hardware and program code instructions.

Many modifications and other implementations of the disclosure set forthherein will come to mind to one skilled in the art to which thedisclosure pertains having the benefit of the teachings presented in theforegoing description and the associated figures. Therefore, it is to beunderstood that the disclosure is not to be limited to the specificimplementations disclosed and that modifications and otherimplementations are intended to be included within the scope of theappended claims. Moreover, although the foregoing description and theassociated figures describe example implementations in the context ofcertain example combinations of elements and/or functions, it should beappreciated that different combinations of elements and/or functions maybe provided by alternative implementations without departing from thescope of the appended claims. In this regard, for example, differentcombinations of elements and/or functions than those explicitlydescribed above are also contemplated as may be set forth in some of theappended claims. Although specific terms are employed herein, they areused in a generic and descriptive sense only and not for purposes oflimitation.

What is claimed is:
 1. An apparatus for detecting a fault state of anaircraft, the apparatus comprising a processor and a memory storingexecutable instructions that, in response to execution by the processor,cause the apparatus to at least: access a training set of flight datafor the aircraft, the training set including observations of the flightdata, each observation of the flight data includes measurements ofproperties from sensors or avionic systems selected and transformed intoa set of features; build a generative adversarial network (GAN)including a generative model and a discriminative model using thetraining set and the set of features, the generative model and thediscriminative model being trained to respectively generate simulatedflight data corresponding to the flight data, and evaluate the simulatedflight data, until the simulated flight data has a correspondingdistribution that matches a distribution of the flight data, thediscriminative model being further configured to identify a subset offeatures from the set of features that capture statistical properties ofthe distribution of the flight data; build an anomaly detection model topredict the fault state of the aircraft, the anomaly detection modelbeing trained using the training set of flight data, the simulatedflight data, and the subset of features; and deploy the anomalydetection model to predict the fault state of the aircraft usingadditional observations of the flight data.
 2. The apparatus of claim 1,wherein the properties from the sensors or avionic systems are selectedproperties from a plurality of properties from a plurality of sensors oravionic systems, and the apparatus being caused to access the trainingset includes being caused to at least: access a flight dataset for theaircraft, the flight dataset including the observations of the flightdata, each observation of the flight data includes measurements of theplurality of properties from the plurality of sensors or avionicsystems; and filter the observations of the flight data by the selectedproperties to produce the training set including the observations of theflight data, each observation of flight data includes the measurementsof the selected properties.
 3. The apparatus of claim 1, wherein eachobservation is measured during operation of the aircraft in the faultstate.
 4. The apparatus of claim 1, wherein the discriminative modelincludes the anomaly detection model, and the apparatus being caused tobuild the anomaly detection model includes being caused to train thediscriminative model to predict the fault state of the aircraft.
 5. Theapparatus of claim 1, wherein the generative model and thediscriminative model are trained using Wasserstein distance to measure adifference between the distribution of the flight data and thecorresponding distribution of the simulated flight data until thegenerative model and the discriminative model are in Nash equilibrium.6. The apparatus of claim 1, wherein the memory stores furtherexecutable instructions that, in response to execution by the processor,cause the apparatus to further at least: establish a digital datalinkwith the aircraft; receive the additional observations of the flightdata from the aircraft over the digital datalink; predict and therebyproduce a prediction of the fault state of the aircraft using theanomaly detection model as deployed, and using the additionalobservations of the flight data received from the aircraft over thedigital datalink; and generate an alert in response to the prediction.7. The apparatus of claim 1, wherein the observations of the flight datain the training set of flight data are from a larger plurality ofobservations of the flight data, and the anomaly detection model istrained using the simulated flight data generated by the generativemodel, without using the larger plurality of observations of the flightdata that are not retained in data storage of the apparatus to reduce astorage requirement of the apparatus.
 8. A method of detecting a faultstate of an aircraft, comprising: accessing a training set of flightdata for the aircraft, the training set including observations of theflight data, each observation of the flight data includes measurementsof properties from sensors or avionic systems selected and transformedinto a set of features; building a generative adversarial network (GAN)including a generative model and a discriminative model using thetraining set and the set of features, the generative model and thediscriminative model being trained to respectively generate simulatedflight data corresponding to the flight data, and evaluate the simulatedflight data, until the simulated flight data has a correspondingdistribution that matches a distribution of the flight data, thediscriminative model further identifying a subset of features from theset of features that capture statistical properties of the distributionof the flight data; building an anomaly detection model to predict thefault state of the aircraft, the anomaly detection model being trainedusing the training set of flight data, the simulated flight data, andthe subset of features; and deploying the anomaly detection model topredict the fault state of the aircraft using additional observations ofthe flight data.
 9. The method of claim 8, wherein the properties fromthe sensors or avionic systems are selected properties from a pluralityof properties from a plurality of sensors or avionic systems, andaccessing the training set includes at least: accessing a flight datasetfor the aircraft, the flight dataset including the observations of theflight data, each observation of the flight data includes measurementsof the plurality of properties from the plurality of sensors or avionicsystems; and filtering the observations of the flight data by theselected properties to produce the training set including theobservations of the flight data, each observation of flight dataincludes the measurements of the selected properties.
 10. The method ofclaim 8, wherein each observation is measured during operation of theaircraft in the fault state.
 11. The method of claim 8, wherein thediscriminative model includes the anomaly detection model, and buildingthe anomaly detection model includes training the discriminative modelto predict the fault state of the aircraft.
 12. The method of claim 8,wherein the generative model and the discriminative model are trainedusing Wasserstein distance to measure a difference between thedistribution of the flight data and the corresponding distribution ofthe simulated flight data until the generative model and thediscriminative model are in Nash equilibrium.
 13. The method of claim 8,further comprising: establishing a digital datalink with the aircraft;receiving the additional observations of the flight data from theaircraft over the digital datalink; predicting and thereby produce aprediction of the fault state of the aircraft using the anomalydetection model as deployed, and using the additional observations ofthe flight data received from the aircraft over the digital datalink;and generating an alert in response to the prediction.
 14. The method ofclaim 8, wherein the observations of the flight data in the training setof flight data are from a larger plurality of observations of the flightdata, and the anomaly detection model is trained using the simulatedflight data generated by the generative model, without using the largerplurality of observations of the flight data that are not retained indata storage of an apparatus implementing the method to reduce a storagerequirement of the apparatus.
 15. A computer-readable storage medium fordetecting a fault state of an aircraft, the computer-readable storagemedium being non-transitory and having computer-readable program codestored therein that in response to execution by a processor, causes anapparatus to at least: access a training set of flight data for theaircraft, the training set including observations of the flight data,each observation of the flight data includes measurements of propertiesfrom sensors or avionic systems selected and transformed into a set offeatures; build a generative adversarial network (GAN) including agenerative model and a discriminative model using the training set andthe set of features, the generative model and the discriminative modelbeing trained to respectively generate simulated flight datacorresponding to the flight data, and evaluate the simulated flightdata, until the simulated flight data has a corresponding distributionthat matches a distribution of the flight data, the discriminative modelbeing further configured to identify a subset of features from the setof features that capture statistical properties of the distribution ofthe flight data; build an anomaly detection model to predict the faultstate of the aircraft, the anomaly detection model being trained usingthe training set of flight data, the simulated flight data, and thesubset of features; and deploy the anomaly detection model to predictthe fault state of the aircraft using additional observations of theflight data.
 16. The computer-readable storage medium of claim 15,wherein the properties from the sensors or avionic systems are selectedproperties from a plurality of properties from a plurality of sensors oravionic systems, and the apparatus being caused to access the trainingset includes being caused to at least: access a flight dataset for theaircraft, the flight dataset including the observations of the flightdata, each observation of the flight data includes measurements of theplurality of properties from the plurality of sensors or avionicsystems; and filter the observations of the flight data by the selectedproperties to produce the training set including the observations of theflight data, each observation of flight data includes the measurementsof the selected properties.
 17. The computer-readable storage medium ofclaim 15, wherein the discriminative model includes the anomalydetection model, and the apparatus being caused to build the anomalydetection model includes being caused to train the discriminative modelto predict the fault state of the aircraft.
 18. The computer-readablestorage medium of claim 15, wherein the generative model and thediscriminative model are trained using Wasserstein distance to measure adifference between the distribution of the flight data and thecorresponding distribution of the simulated flight data until thegenerative model and the discriminative model are in Nash equilibrium.19. The computer-readable storage medium of claim 15, having furthercomputer-readable program code stored therein that in response toexecution by the processor, causes the apparatus to further at least:establish a digital datalink with the aircraft; receive the additionalobservations of the flight data from the aircraft over the digitaldatalink; predict and thereby produce a prediction of the fault state ofthe aircraft using the anomaly detection model as deployed, and usingthe additional observations of the flight data received from theaircraft over the digital datalink; and generate an alert in response tothe prediction.
 20. The computer-readable storage medium of claim 15,wherein the observations of the flight data in the training set offlight data are from a larger plurality of observations of the flightdata, and the anomaly detection model is trained using the simulatedflight data generated by the generative model, without using the largerplurality of observations of the flight data that are not retained indata storage of the apparatus to reduce a storage requirement of theapparatus.